# makefile.w32-in -- W32 -*- Makefile -*- to generate character property tables.
# Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
#   National Institute of Advanced Industrial Science and Technology (AIST)
#   Registration Number H13PRO009
#
# This file is part of GNU Emacs.

# GNU Emacs is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.


EMACS = ../../src/$(BLD)/emacs.exe
DSTDIR = ../../lisp/international
lisp = $(CURDIR)/../../lisp
# EMACSLOADPATH should include international, so Emacs finds encoded-kb.
# It should include emacs-lisp, so Emacs finds bytecomp.  This is because
# lisp/subdirs.el is not generated yet when the commands below run.
EMACSLOADPATH = $(lisp);$(lisp)/international;$(lisp)/emacs-lisp
# Quote EMACS so it could be a file name with embedded whitespace
RUNEMACS = "$(EMACS)" -Q --multibyte -batch

all: $(DSTDIR)/charprop.el

.el.elc:
	$(RUNEMACS) -f batch-byte-compile $<

unidata.txt: UnicodeData.txt
	sed -e \
	  $(ARGQUOTE)s/\([^;]*\);\(.*\)/(#x\1 $(DQUOTE)\2$(DQUOTE))/$(ARGQUOTE)\
	  -e $(ARGQUOTE)s/;/$(DQUOTE) $(DQUOTE)/g$(ARGQUOTE) < UnicodeData.txt > $@

charprop-SH: unidata-gen.elc unidata.txt
	ELC=$(CURDIR)/unidata-gen.elc; \
	DATA=$(CURDIR)/unidata.txt; \
	cd $(DSTDIR); \
	  $(RUNEMACS) --load $${ELC} -f unidata-gen-files $${DATA}

charprop-CMD: unidata-gen.elc unidata.txt
	$(RUNEMACS) --eval $(ARGQUOTE)(cd $(DQUOTE)$(DSTDIR)$(DQUOTE))$(ARGQUOTE) --load $(CURDIR)/unidata-gen.elc -f unidata-gen-files $(CURDIR)/unidata.txt

${DSTDIR}/charprop.el: charprop-$(SHELLTYPE)

clean:
	- $(DEL) unidata-gen.elc unidata.txt

